Namespaces
Variants

std::literals::chrono_literals:: operator""d

From cppreference.net
Definido en el encabezado <chrono>
constexpr std:: chrono :: day operator "" d ( unsigned long long d ) noexcept ;
(desde C++20)

Forma un literal std::chrono::day que representa un día del mes en el calendario.

Contenidos

Parámetros

d - el valor del día

Valor de retorno

Un std::chrono::day que almacena d . Si d > 255 , el valor almacenado no está especificado.

Implementación posible

constexpr std::chrono::day operator ""d(unsigned long long d) noexcept
{
    return std::chrono::day(d);
}

Notas

Este operador se declara en el espacio de nombres std :: literals :: chrono_literals , donde tanto literals como chrono_literals son espacios de nombres en línea . Se puede acceder a este operador mediante:

  • using namespace std :: literals ,
  • using namespace std :: chrono_literals , o
  • using namespace std :: literals :: chrono_literals .

Además, dentro del espacio de nombres std :: chrono , la directiva using namespace literals :: chrono_literals ; es proporcionada por la biblioteca estándar , de modo que si un programador utiliza using namespace std :: chrono ; para obtener acceso a las clases en la biblioteca chrono , los operadores literales correspondientes también se vuelven visibles.

Ejemplo

#include <chrono>
#include <iostream>
int main()
{
    using namespace std::literals::chrono_literals;
    std::cout << static_cast<unsigned>(42d) << '\t' << 42d << '\n'
              << static_cast<unsigned>(256d) << '\t' << 256d << '\n' // no especificado
              << static_cast<unsigned>(298d) << '\t' << 298d << '\n'; // no especificado
}

Salida posible:

42      42 is not a valid day
0       00 is not a valid day
42      42 is not a valid day

Véase también

construye un day
(función miembro pública de std::chrono::day )
recupera el valor del día almacenado
(función miembro pública de std::chrono::day )